package benak.tomas.crimemonitor.library;

/**
 * A base interface for providing a crime data interval context.
 * <p>
 * To an implementing class, this interface adds the ability to
 * associate the crime statistics with a particular crime data interval.
 * 
 * <p>
 * When crime statistics get associated with the crime data interval, it
 * means that all of the crimes that are used to create those statistics,
 * have been committed during the crime data interval.
 * <p>
 * The crime data interval is an interval starting with a given month in a given year
 * and ending with another month in another year.
 * 
 * @author Tom
 */
public interface UtvarAndIntervalBasedCrimeSummary extends UtvarBasedCrimeSummary
{
	/**
	 * Returns the initial year of the crime data interval
	 * 
	 * @return the initial year of the crime data interval
	 */
	public int getStartYear();
	/**
	 * Returns the initial month of the crime data interval.
	 * 
	 * @return the initial month of the crime data interval
	 */
	public int getStartMonth();
	/**
	 * Returns the terminal year of the crime data interval.
	 * 
	 * @return the terminal year of the crime data interval
	 */
	public int getEndYear();
	/**
	 * Returns the terminal month of the crime data interval.
	 * 
	 * @return the terminal month of the crime data interval
	 */
	public int getEndMonth();
}
